﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;

namespace Registro
{
    public class ControladorHtml
    {
        BaseDatos bd = new BaseDatos();
        public Boolean llenarGridView(DataTable dt, string fecha)
        {
            string dato = "";
            DataSet ds = bd.LeerRegistros("SELECT nombre FROM grupos");
            
            dt.Columns.Add("DIAS");
            DataRow Renglon = dt.NewRow();
            Renglon["DIAS"] = "";
            dt.Rows.Add(Renglon);

            for (int c = 0; c < ds.Tables[0].Rows.Count; c++)
            {
                dato = ds.Tables[0].Rows[c][0].ToString();
                dt.Columns.Add(dato);
                DataSet ds2 = bd.LeerRegistros("SELECT cantidadAlumnos FROM gruposalumnos,grupos WHERE grupos.idGrupo = gruposalumnos.idGrupo AND nombre='"+dato+"';");
                for (int c1 = 0; c1 < ds2.Tables[0].Rows.Count; c1++)
                {
                    Renglon[dato] = ds2.Tables[0].Rows[c1][0].ToString();
                }
            }

            Renglon = dt.NewRow();
            Renglon["DIAS"] = "LUNES";
            dt.Rows.Add(Renglon);

            int cont = 1;
            for(int c3=0; c3<ds.Tables[0].Rows.Count; c3++)
            {
                try
                {
                    dato = ds.Tables[0].Rows[c3][0].ToString();
                    DataSet ds3 = bd.LeerRegistros("SELECT MAX(cantidadAlumnos) FROM registros,Horarios,Grupos WHERE Horarios.idHorario=Registros.idHorario AND Grupos.idGrupo=Horarios.idGrupo AND Grupos.idGrupo=" + cont + " AND fechaRegistro='"+fecha+"';");
                    Renglon[dato] = ds3.Tables[0].Rows[0][0].ToString();
                    cont += 1;
                }
                catch {
                    dato = ds.Tables[0].Rows[c3][0].ToString();
                    Renglon[dato] = 0;
                    cont += 1;
                }
            }

            DataSet dsfecha = bd.LeerRegistros("CALL incrementarFecha('"+fecha+"')");
            fecha = dsfecha.Tables[0].Rows[0][0].ToString();
            Renglon = dt.NewRow();
            Renglon["DIAS"] = "MARTES";
            dt.Rows.Add(Renglon);
            cont = 1;
            for (int c3 = 0; c3 < ds.Tables[0].Rows.Count; c3++)
            {
                try
                {
                    dato = ds.Tables[0].Rows[c3][0].ToString();
                    DataSet ds3 = bd.LeerRegistros("SELECT MAX(cantidadAlumnos) FROM registros,Horarios,Grupos WHERE Horarios.idHorario=Registros.idHorario AND Grupos.idGrupo=Horarios.idGrupo AND Grupos.idGrupo=" + cont + " AND fechaRegistro='"+fecha+"';");
                    //System.Windows.Forms.MessageBox.Show("SELECT cantidadAlumnos,diaSemana FROM registros,Horarios,Grupos WHERE Horarios.idHorario=Registros.idHorario AND Grupos.idGrupo=Horarios.idGrupo AND Grupos.idGrupo=" + cont + " AND fechaRegistro=20121203 Group by diaSemana;");
                    Renglon[dato] = ds3.Tables[0].Rows[0][0].ToString();
                    cont += 1;
                }
                catch {
                    dato = ds.Tables[0].Rows[c3][0].ToString();
                    Renglon[dato] = 0;
                    cont += 1;
                }
            }

            DataSet dsfecha1 = bd.LeerRegistros("CALL incrementarFecha('" + fecha + "')");
            fecha = dsfecha1.Tables[0].Rows[0][0].ToString();
            Renglon = dt.NewRow();
            Renglon["DIAS"] = "MIERCOLES";
            dt.Rows.Add(Renglon);
            cont = 1;
            for (int c3 = 0; c3 < ds.Tables[0].Rows.Count; c3++)
            {
                try
                {
                    dato = ds.Tables[0].Rows[c3][0].ToString();
                    DataSet ds3 = bd.LeerRegistros("SELECT MAX(cantidadAlumnos) FROM registros,Horarios,Grupos WHERE Horarios.idHorario=Registros.idHorario AND Grupos.idGrupo=Horarios.idGrupo AND Grupos.idGrupo=" + cont + " AND fechaRegistro='"+fecha+"';");
                    Renglon[dato] = ds3.Tables[0].Rows[0][0].ToString();
                    cont += 1;
                }
                catch
                {
                    dato = ds.Tables[0].Rows[c3][0].ToString();
                    Renglon[dato] = 0;
                    cont += 1;
                }
            }

            DataSet dsfecha2 = bd.LeerRegistros("CALL incrementarFecha('" + fecha + "')");
            fecha = dsfecha2.Tables[0].Rows[0][0].ToString();
            Renglon = dt.NewRow();
            Renglon["DIAS"] = "JUEVES";
            dt.Rows.Add(Renglon);
            cont = 1;
            for (int c3 = 0; c3 < ds.Tables[0].Rows.Count; c3++)
            {
                try
                {
                    dato = ds.Tables[0].Rows[c3][0].ToString();
                    DataSet ds3 = bd.LeerRegistros("SELECT MAX(cantidadAlumnos) FROM registros,Horarios,Grupos WHERE Horarios.idHorario=Registros.idHorario AND Grupos.idGrupo=Horarios.idGrupo AND Grupos.idGrupo=" + cont + " AND fechaRegistro='"+fecha+"';");
                    Renglon[dato] = ds3.Tables[0].Rows[0][0].ToString();
                    cont += 1;
                }
                catch
                {
                    dato = ds.Tables[0].Rows[c3][0].ToString();
                    Renglon[dato] = 0;
                    cont += 1;
                }
            }

            DataSet dsfecha3 = bd.LeerRegistros("CALL incrementarFecha('" + fecha + "')");
            fecha = dsfecha3.Tables[0].Rows[0][0].ToString();
            Renglon = dt.NewRow();
            Renglon["DIAS"] = "VIERNES";
            dt.Rows.Add(Renglon);
            cont = 1;
            for (int c3 = 0; c3 < ds.Tables[0].Rows.Count; c3++)
            {
                try
                {
                    dato = ds.Tables[0].Rows[c3][0].ToString();
                    DataSet ds3 = bd.LeerRegistros("SELECT MAX(cantidadAlumnos) FROM registros,Horarios,Grupos WHERE Horarios.idHorario=Registros.idHorario AND Grupos.idGrupo=Horarios.idGrupo AND Grupos.idGrupo=" + cont + " AND fechaRegistro='"+fecha+"';");
                    Renglon[dato] = ds3.Tables[0].Rows[0][0].ToString();
                    cont += 1;
                }
                catch
                {
                    dato = ds.Tables[0].Rows[c3][0].ToString();
                    Renglon[dato] = 0;
                    cont += 1;
                }
            }

            return true;
        }

        
    }
    
}